package com.uam.db.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.uam.db.model.dto.TaskListDTO;
import com.uam.db.model.entity.Task;
import com.uam.db.model.entity.RoutQueryModel;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @author uam
 * @create 2023/12/3 17:23
 * @email uam@uam.com
 */
@Mapper
public interface TaskMapper extends BaseMapper<Task> {
    IPage<TaskListDTO> selectTaskList(Page<TaskListDTO> page, @Param("status") List<Integer> status, @Param("taskName") String taskName, @Param("createLoginName") String createLoginName);

    /**
     * 查询任务对应的飞行器和任务信息
     *
     * @param taskIds
     * @return
     */
    @MapKey("taskId")
    Map<Long, RoutQueryModel> selectTaskAirplane(@Param("taskId") List<Long> taskIds);
}
